Inside Macintosh: QuickTime Components

| Previous | Chapter contents | Chapter top | Section top |

Summary of Movie Data Exchange Components

C Summary

Constants

/* component type values */
#define MovieImportType 'eat '                  /* movie data import */
#define MovieExportType 'spit'                  /* movie data export */
/*&nsp; componentFlags values for movie import and movie export components */
enum {
    canMovieImportHandles                   = 1,    /* can import from handles */
    canMovieImportFiles                     = 2,    /* can import from files */
    hasMovieImportUserInterface             = 4,    /* import has user interface */
    canMovieExportHandles                   = 8,    /* can export to handles */
    canMovieExportFiles                     = 16,   /* can export to files */
    hasMovieExportUserInterface             = 32,   /* export has user interface */
    dontAutoFileMovieImport                 = 64    /* do not automatically import
                                                        movie files */
};
/*  flags for MovieImportHandle and MovieImportFile */
enum {
    movieImportCreateTrack                  = 1,    /* create a new track */
    movieImportInParallel                   = 2,    /* paste imported data */
    movieImportMustUseTrack                 = 4     /* use specified track */
};
enum {
    movieImportResultUsedMultipleTracks = 8,                /* component used several
                                                                tracks */
};
enum {
    /* movie data import components */
    kMovieImportHandleSelect                            = 1,    /* import from handle */
    kMovieImportFileSelect                              = 2,    /* import from file */
    kMovieImportSetSampleDurationSelect                 = 3,    /* set sample duration */
    kMovieImportSetSampleDescriptionSelect = 4,                 /* set sample description */
    kMovieImportSetMediaFileSelect                      = 5,    /* set media file */
    kMovieImportSetDimensionsSelect                     = 6,    /* set track dimensions */
    kMovieImportSetChunkSizeSelect                      = 7,    /* set chunk size */
    kMovieImportSetProgressProcSelect                   = 8,    /* set progress func */
    kMovieImportSetAuxiliaryDataSelect                  = 9,    /* set additional data */
    kMovieImportSetFromScrapSelect                      = 10,   /* data from scrap */
    kMovieImportDoUserDialogSelect                      = 11,   /* invoke user dialog */
    kMovieImportSetDurationSelect                       = 12    /* set paste duration */
    
    /* movie data export components */
    kMovieExportToHandleSelect                      = 128,  /* export to handle */
    kMovieExportToFileSelect                        = 129,  /* export to file */
    kMovieExportDoUserDialogSelect                  = 130,  /* invoke user dialog */
    kMovieExportGetAuxiliaryDataSelect              = 131,/* get additional data */
    kMovieExportSetProgressProcSelect               = 132   /* set progress function */
};

Data Type

typedef ComponentInstance MovieImportComponent, MovieExportComponent;

Functions

Importing Movie Data
pascal ComponentResult MovieImportHandle
(MovieImportComponent ci, Handle dataH, Movie theMovie, Track targetTrack, Track *usedTrack, TimeValue atTime, TimeValue *addedDuration, long inFlags, long *outFlags);
pascal ComponentResult MovieImportFile
(MovieImportComponent ci, const FSSpec *theFile, Movie theMovie, Track targetTrack, Track *usedTrack, TimeValue atTime, TimeValue *addedDuration, long inFlags, long *outFlags);
Configuring Movie Data Import Components
pascal ComponentResult MovieImportSetDuration
(MovieImportComponent ci, TimeValue duration);
pascal ComponentResult MovieImportSetSampleDuration
(MovieImportComponent ci, TimeValue duration, TimeScale scale);
pascal ComponentResult MovieImportSetSampleDescription
(MovieImportComponent ci, SampleDescriptionHandle desc, OSType mediaType);
pascal ComponentResult MovieImportSetMediaFile
(MovieImportComponent ci, AliasHandle alias);
pascal ComponentResult MovieImportSetDimensions
(MovieImportComponent ci, Fixed width, Fixed height);
pascal ComponentResult MovieImportSetChunkSize
(MovieImportComponent ci, long chunkSize);
pascal ComponentResult MovieImportSetProgressProc
(MovieImportComponent ci, MovieProgressUPP proc, long refcon);
pascal ComponentResult MovieImportSetAuxiliaryData
(MovieImportComponent ci, Handle data, OSType handleType);
pascal ComponentResult MovieImportSetFromScrap
(MovieImportComponent ci, Boolean fromScrap);
pascal ComponentResult MovieImportDoUserDialog
(MovieImportComponent ci, const FSSpec *theFile, Handle theData, Boolean *canceled);
Exporting Movie Data
pascal ComponentResult MovieExportToHandle
(MovieImportComponent ci, Handle dataH, Movie theMovie, Track onlyThisTrack, TimeValue startTime, TimeValue duration);
pascal ComponentResult MovieExportToFile
(MovieImportComponent ci, const FSSpec *theFile, Movie theMovie, Track onlyThisTrack, TimeValue startTime, TimeValue duration);
Configuring Movie Data Export Components
pascal ComponentResult MovieExportSetProgressProc
(MovieImportComponent ci, MovieProgressUPP proc, long refcon);
pascal ComponentResult MovieExportGetAuxiliaryData
(MovieImportComponent ci, Handle dataH, OSType *handleType);
pascal ComponentResult MovieExportDoUserDialog
(MovieImportComponent ci, const FSSpec *theFile, Handle theData, Boolean *canceled);

Result Codes

invalidTrack

-2009

Specified track cannot receive imported data

unsupportedAuxiliaryImportData

-2057

Cannot work with specified handle type

badComponentSelector

0x80008002

Function not supported

Pascal Summary

Constants

CONST
{component type values}
    MovieImportType = 'eat '                    {movie data import}
    MovieExportType = 'spit'                    {movie data export}

{componentFlags values for movie import and movie export components}
    canMovieImportHandles                   = 1;    {can import from handles}
    canMovieImportFiles                     = 2;    {can import from files}
    hasMovieImportUserInterface             = 4;    {import has user interface}
    canMovieExportHandles                   = 8;    {can export to handles}
    canMovieExportFiles                     = $10;  {can export to files}
    hasMovieExportUserInterface             = $20;{export has user interface}
    dontAutoFileMovieImport                 = $40;{do not automatically import movie }
                                                    { files}
{flags for MovieImportHandle and MovieImportFile functions}
    movieImportCreateTrack                          = 1;    {create a new track}
    movieImportInParallel                           = 2;    {paste imported data}
    movieImportMustUseTrack                         = 4;    {use specified track}
    movieImportResultUsedMultipleTracks = 8;                {component used several }
                                                            { tracks}
{movie data import components}
    kMovieImportHandleSelect                            = 1;    {import from handle}
    kMovieImportFileSelect                              = 2;    {import from file}
    kMovieImportSetSampleDurationSelect                 = 3;    {set sample duration}
    kMovieImportSetSampleDescriptionSelect = 4;                 {set sample description}
    kMovieImportSetMediaFileSelect                      = 5;    {set media file}
    kMovieImportSetDimensionsSelect                     = 6;    {set track dimensions}
    kMovieImportSetChunkSizeSelect                      = 7;    {set chunk size}
    kMovieImportSetProgressProcSelect                   = 8;    {set progress function}
    kMovieImportSetAuxiliaryDataSelect                  = 9;    {set additional data}
    kMovieImportSetFromScrapSelect                      = $A;   {data from scrap}
    kMovieImportDoUserDialogSelect                      = $B;   {invoke user dialog box}
    kMovieImportSetDurationSelect                       = $C;   {set paste duration}
    {movie data export components}
    kMovieExportToHandleSelect                      = $80;      {export to handle}
    kMovieExportToFileSelect                        = $81;      {export to file}
    kMovieExportDoUserDialogSelect                  = $82;      {invoke user dialog box}
    kMovieExportGetAuxiliaryDataSelect              = $83;      {get additional data}
    kMovieExportSetProgressProcSelect               = $84;      {set progress function}

Data Type

TYPE
    MovieImportComponent = ComponentInstance;
    MovieExportComponent = ComponentInstance;

Routines

Importing Movie Data
FUNCTION MovieImportHandle (ci: MovieImportComponent; dataH: Handle; theMovie: Movie; targetTrack: Track; VAR usedTrack: Track; atTime: TimeValue; VAR addedDuration: TimeValue; inFlags: LongInt; VAR outFlags: LongInt): ComponentResult;
FUNCTION MovieImportFile (ci: MovieImportComponent; theFile: FSSpec; theMovie: Movie; targetTrack: Track; VAR usedTrack: Track; atTime: TimeValue; VAR addedDuration: TimeValue; inFlags: LongInt; VAR outFlags: LongInt): ComponentResult;
Configuring Movie Data Import Components
FUNCTION MovieImportSetDuration
(ci: MovieImportComponent; duration: TimeValue): ComponentResult;
FUNCTION MovieImportSetSampleDuration
(ci: MovieImportComponent; duration: TimeValue; scale: TimeScale): ComponentResult;
FUNCTION MovieImportSetSampleDescription
(ci: MovieImportComponent; desc: SampleDescriptionHandle; mediaType: OSType): ComponentResult;
FUNCTION MovieImportSetMediaFile
(ci: MovieImportComponent; alias: AliasHandle): ComponentResult;
FUNCTION MovieImportSetDimensions
(ci: MovieImportComponent; width, height: Fixed): ComponentResult;
FUNCTION MovieImportSetChunkSize
(ci: MovieImportComponent; chunkSize: LongInt): ComponentResult;
FUNCTION MovieImportSetProgressProc
(ci: MovieImportComponent; proc: ProcPtr; refCon: LongInt): ComponentResult;
FUNCTION MovieImportSetAuxiliaryData
(ci: MovieImportComponent; data: Handle; handleType: OSType): ComponentResult;
FUNCTION MovieImportSetFromScrap
(ci: MovieImportComponent; fromScrap: Boolean): ComponentResult;
FUNCTION MovieImportDoUserDialog
(ci: MovieImportComponent; srcFile: FSSpec; data: Handle; VAR canceled: Boolean): ComponentResult;
Exporting Movie Data
FUNCTION MovieExportToHandle
(ci: MovieExportComponent; data: Handle; theMovie: Movie; onlyThisTrack: Track; startTime: TimeValue; duration: TimeValue): ComponentResult;
FUNCTION MovieExportToFile (ci: MovieExportComponent; dstFile: FSSpec; theMovie: Movie; onlyThisTrack: Track; startTime: TimeValue; duration: TimeValue): ComponentResult;
Configuring Movie Data Export Components
FUNCTION MovieExportSetProgressProc
(ci: MovieExportComponent; proc: ProcPtr; refCon: LongInt): ComponentResult;
FUNCTION MovieExportGetAuxiliaryData
(ci: MovieExportComponent; dstFile: Handle; VAR handleType: OSType): ComponentResult;
FUNCTION MovieExportDoUserDialog
(ci: MovieExportComponent; dstFile: FSSpec; data: Handle; VAR canceled: Boolean): ComponentResult;

© 1997 Apple Computer, Inc.

| Previous | Chapter contents | Chapter top | Section top |